Multi-container Application তৈরি করা Docker Compose ব্যবহার করে

Latest Technologies - ডকার (Docker) - Docker Compose | NCTB BOOK

Docker Compose ব্যবহার করে একটি Multi-container Application তৈরি করা একটি সহজ এবং কার্যকর প্রক্রিয়া। এটি বিভিন্ন কন্টেইনারকে একত্রিত করে একটি স্বতন্ত্র অ্যাপ্লিকেশন তৈরি করতে সক্ষম করে, যেখানে প্রতিটি কন্টেইনার একটি নির্দিষ্ট পরিষেবা পরিচালনা করে। এখানে একটি উদাহরণ দেয়া হলো যা একটি ওয়েব অ্যাপ্লিকেশন, একটি ডেটাবেস এবং একটি ক্যাশ সার্ভার নিয়ে গঠিত।

উদাহরণ: Multi-container Application তৈরি করা

আমরা একটি সাধারণ ওয়েব অ্যাপ্লিকেশন তৈরি করবো যা Flask (Python ফ্রেমওয়ার্ক) ব্যবহার করে এবং PostgreSQL ডেটাবেস এবং Redis ক্যাশ ব্যবহার করবে।

১. প্রজেক্ট ফোল্ডার তৈরি করা

প্রথমে একটি নতুন ডিরেক্টরি তৈরি করুন এবং সেখানে যান:

mkdir my-multi-container-app
cd my-multi-container-app

২. Flask অ্যাপ্লিকেশন তৈরি করা

একটি ফাইল তৈরি করুন app.py নামে এবং নিচের কোড লিখুন:

from flask import Flask
import os
import psycopg2

app = Flask(__name__)

@app.route('/')
def hello():
    return "Hello from Flask!"

if __name__ == '__main__':
    app.run(host='0.0.0.0', port=5000)

৩. requirements.txt তৈরি করা

একটি requirements.txt ফাইল তৈরি করুন এবং নিচের লাইব্রেরিগুলি যুক্ত করুন:

Flask
psycopg2-binary

৪. Dockerfile তৈরি করা

একটি Dockerfile তৈরি করুন এবং নিম্নলিখিত কনটেন্ট যুক্ত করুন:

# বেস ইমেজ হিসাবে Python ব্যবহার করা হচ্ছে
FROM python:3.9-slim

# কাজের ডিরেক্টরি সেট করুন
WORKDIR /app

# প্রয়োজনীয় ফাইলগুলি কপি করুন
COPY requirements.txt .

# নির্ভরতাগুলি ইনস্টল করুন
RUN pip install -r requirements.txt

# অ্যাপ্লিকেশন কপি করুন
COPY . .

# ডিফল্ট কমান্ড নির্ধারণ করুন
CMD ["python", "app.py"]

৫. docker-compose.yml ফাইল তৈরি করা

এখন, docker-compose.yml ফাইল তৈরি করুন এবং নিচের কনটেন্ট যুক্ত করুন:

version: '3.8'

services:
  web:
    build: .
    ports:
      - "5000:5000"
    depends_on:
      - db
      - cache

  db:
    image: postgres:latest
    environment:
      POSTGRES_USER: user
      POSTGRES_PASSWORD: password
      POSTGRES_DB: mydatabase
    volumes:
      - db-data:/var/lib/postgresql/data

  cache:
    image: redis:latest

volumes:
  db-data:

৬. Docker Compose ব্যবহার করে Multi-container Application শুরু করা

১. Docker Compose তৈরি করা

Docker Compose অ্যাপ্লিকেশন তৈরি করতে, নিচের কমান্ডটি ব্যবহার করুন:

docker-compose up --build
  • --build ফ্ল্যাগটি নিশ্চিত করে যে Dockerfile থেকে নতুন ইমেজ তৈরি করা হবে।

২. অ্যাপ্লিকেশন পরীক্ষা করা

ব্রাউজারে গিয়ে http://localhost:5000 খুলুন। আপনি "Hello from Flask!" বার্তা দেখতে পাবেন।

৩. কন্টেইনারগুলি বন্ধ করা

কন্টেইনারগুলি বন্ধ করতে, নিচের কমান্ডটি ব্যবহার করুন:

docker-compose down

সারসংক্ষেপ

Docker Compose ব্যবহার করে Multi-container Application তৈরি করা সহজ এবং কার্যকর। উপরের উদাহরণে, একটি Flask অ্যাপ্লিকেশন, PostgreSQL ডেটাবেস এবং Redis ক্যাশ সার্ভার নিয়ে একটি অ্যাপ্লিকেশন তৈরি করা হয়েছে। docker-compose.yml ফাইলটি সমস্ত সার্ভিস এবং নির্ভরতাগুলি সংজ্ঞায়িত করে, যা ডেভেলপমেন্ট এবং ডিপ্লয়মেন্ট প্রক্রিয়াকে সহজ করে তোলে। Docker Compose আপনার কন্টেইনার ভিত্তিক অ্যাপ্লিকেশনগুলি কার্যকরভাবে পরিচালনা করতে সাহায্য করে।

Content added By
Promotion